﻿namespace Creventive.Wpf.ShellFactory.Modules
{
    /// <summary>
    ///   Defines the type of module.
    /// </summary>
    /// <remarks>
    ///   The value of the enum constants indicates their load time priority. The lower the value, the earlier the modules are loaded.
    /// </remarks>
    public enum ModuleType
    {
        /// <summary>
        ///   Shell module
        /// </summary>
        Shell = 0,

        /// <summary>
        ///   Statically referenced module
        /// </summary>
        Static = 1,

        /// <summary>
        ///   Dynamically loaded module (i.e. plugin)
        /// </summary>
        Dynamic = 2,
    }
}